home *** CD-ROM | disk | FTP | other *** search
/ MacHack 2000 / MacHack 2000.toast / pc / The Hacks / Softshoe / Lisa's Mac Parts / Views / Pane Frames / JustifiedFrame.h < prev   
Text File  |  2000-06-23  |  1KB  |  52 lines

  1. // JustifiedFrame.h
  2.  
  3. #ifndef JustifiedFrame_h
  4. #define JustifiedFrame_h
  5.  
  6. #ifndef PaneStack_h
  7. #include "PaneStack.h"
  8. #endif
  9. #ifndef StackedPane_h
  10. #include "StackedPane.h"
  11. #endif
  12.  
  13. class Justification;
  14.  
  15. class JustifiedFrame: public PaneStack
  16.   {
  17.     private:
  18.         StackedPane interior;
  19.         StackedPane exterior;
  20.  
  21.         const Justification& horizontal;
  22.         const Justification& vertical;
  23.         
  24.     protected:
  25.         virtual void Arrange( UPoint32 size );
  26.         
  27.     public:
  28.         JustifiedFrame( const Announcing<UPoint32>& size,
  29.                              const Justification& h,
  30.                              const Justification& v );
  31.         
  32.         const RectangularPane& Interior() const    { return interior; }
  33.         RectangularPane& Interior()                    { return interior; }
  34.         
  35.         const RectangularPane& Exterior() const    { return exterior; }
  36.         RectangularPane& Exterior()                    { return exterior; }
  37.  
  38.         virtual int32 MinimumWidth() const;
  39.         virtual int32 MinimumHeight() const;
  40.         
  41.         virtual int32 MaximumWidth() const;
  42.         virtual int32 MaximumHeight() const;
  43.         
  44.         virtual int32 ReasonableWidth() const;
  45.         virtual int32 ReasonableHeight() const;
  46.         
  47.         virtual int32 BestWidth( Range32 bounds ) const;
  48.         virtual int32 BestHeight( Range32 bounds ) const;
  49.   };
  50.  
  51. #endif
  52.